package com.weight.system.datagroupd.service.impl;

import com.weight.system.datagroupd.PO.DatagroupdInfo;
import com.weight.system.datagroupd.service.DatagroupdInfoService;
import com.weight.system.datagroupd.DAO.DatagroupdInfoMapper;
import java.util.List;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.github.pagehelper.PageHelper;
import org.springframework.transaction.annotation.Transactional;
import com.weight.common.util.CommonUtils;
import lombok.extern.slf4j.Slf4j;

/**
 * 数据结构表
 */
@Service
@Transactional
@Slf4j
public class DatagroupdInfoServiceImpl implements DatagroupdInfoService {

	@Autowired
	private DatagroupdInfoMapper datagroupdInfoMapper;


	/**
	 * 查询数据结构信息--条件查询
	 * @param map
	 * @return
	 */
	@Override
	public List<DatagroupdInfo> findDatagroupdInfoByT(Map map){
		return datagroupdInfoMapper.findDatagroupdInfoByT(map);
	}

	/**
	 * 查询数据结构信息--条件，分页查询
	 * @param currentPage
	 * @param pageSize
	 * @param map
	 * @return
	 */
	@Override
	public List<DatagroupdInfo> findDatagroupdInfoByPage(int currentPage,int pageSize,Map map){
		PageHelper.startPage(currentPage, pageSize);
		List<DatagroupdInfo> datagroupdInfoList = datagroupdInfoMapper.findDatagroupdInfoByT(map);
		return datagroupdInfoList;
	}

	/**
	 * 查询数据结构信息--查询全部
	 * @return
	 */
	@Override
	public List<DatagroupdInfo> findAll(){
		return datagroupdInfoMapper.findAll();
	}

	/**
	 * ID查询数据结构信息
	 * @param map
	 * @return
	 */
	@Override
	public DatagroupdInfo findByDatagroupdInfoId(Map map){
		DatagroupdInfo datagroupdInfo=datagroupdInfoMapper.findByDatagroupdInfoId(map);
		CommonUtils.validateExistObj(datagroupdInfo,map);
		return datagroupdInfo;
	}

	/**
	 * ID查询数据结构信息-批量
	 * @param datagroupdInfoIdList
	 * @return
	 */
	@Override
	public List findByDatagroupdInfoIdList(List datagroupdInfoIdList){
		List idList = datagroupdInfoMapper.findByDatagroupdInfoIdList(datagroupdInfoIdList);
		CommonUtils.validateExistList(idList,datagroupdInfoIdList);
		return idList;
	}

	/**
	 * 添加数据结构
	 * @param datagroupdInfo
	 */
	@Override
	public void insertDatagroupdInfo(DatagroupdInfo datagroupdInfo){
		datagroupdInfoMapper.insertDatagroupdInfo(datagroupdInfo);
	}

	/**
	 * 批量添加数据结构
	 * @param datagroupdInfoList
	 */
	@Override
	public void insertDatagroupdInfoBatch(List<DatagroupdInfo> datagroupdInfoList){
		datagroupdInfoMapper.insertDatagroupdInfoBatch(datagroupdInfoList);
	}

	/**
	 * 修改数据结构
	 * @param datagroupdInfo
	 */
	@Override
	public void updateDatagroupdInfo(DatagroupdInfo datagroupdInfo){
		datagroupdInfoMapper.updateDatagroupdInfo(datagroupdInfo);
	}

	/**
	 * 修改数据结构
	 * @param datagroupdInfo
	 */
	@Override
	public void updateDatagroupdInfoLimt(DatagroupdInfo datagroupdInfo){
		datagroupdInfoMapper.updateDatagroupdInfoLimt(datagroupdInfo);
	}

	/**
	 * 物理删除数据结构
	 * @param map
	 */
	@Override
	public void deleteByDatagroupdInfoId(Map map){
		datagroupdInfoMapper.deleteByDatagroupdInfoId(map);
	}

	/**
	 * 批量物理删除数据结构
	 * @param datagroupdInfoIdList
	 */
	@Override
	public void deleteByDatagroupdInfoIdBatch(List datagroupdInfoIdList){
		datagroupdInfoMapper.deleteByDatagroupdInfoIdBatch(datagroupdInfoIdList);
	}

	/**
	 * 状态删除数据结构
	 * @param map
	 */
	@Override
	public void upDelByDatagroupdInfoId(Map map){
		datagroupdInfoMapper.upDelByDatagroupdInfoId(map);
	}

	/**
	 * 批量状态删除数据结构
	 * @param datagroupdInfoList
	 */
	@Override
	public void upDelByDatagroupdInfoIdBatch(Map<String, Object> map){
		datagroupdInfoMapper.upDelByDatagroupdInfoIdBatch(map);
	}

}